/**
 * 
 */
package com.sci.web.dao;

import com.sci.web.bean.Enterprise_Base;
import com.sci.web.bean.UserRegister;

/**
 * @author BaiFuyou
 * @date: Sep 27, 2011 10:53:44 PM
 */
public interface UserRegisterDao {
	/**
	 * 判断用户是否已经存在
	 * @param name
	 * @return  false 不存在 true 存在
	 */
	boolean isUserExist(String name);
	/**
	 * 验证企业注册的企业名称是否已经存在
	 * @param name
	 * @return  true 存在 false 不存在
	 */
	boolean isEnterpriseNameExist(String name);
	/**
	 * 企业法人代码是否已经存在
	 * @param code
	 * @return true 存在 false 不存在
	 */
	boolean isEnterperisecorporatecodExist(String code);
	/**
	 * 插入一个用户，并利用该用户产生的ID 更新企业基础数据
	 * 保证在同一个事务中进行完成
	 * @param ur
	 * @param eb
	 * @return true 成功 false 不成功
	 */
	boolean addNewUserAndEnterpriseBase(UserRegister ur,Enterprise_Base eb);
	/**
	 * 注册成功时，返回企业注册地的审核人员和联系方式
	 * @param city_id
	 * @return
	 */
	String getUserChargeAndUserPhone(int city_id);
	/**
	 * 在进行企业用户编辑企业信息的时候，验证用户填写的用户名是否被使用过
	 * @param userId  ID
	 * @param name   企业新的名称
	 * @return true  存在 false  不存在
	 */
	boolean isEnterpriseNameExistForEdit(int userId,String name);
	/**
	 * 在进行企业用户编辑企业信息的视乎，验证用户填写的法人代码是否被使用过
	 * @param userId
	 * @param name  法人代码
	 * @return
	 */
	boolean isEnterrprisecorporatecodeExistEdit(int userId,String name);
	
	/**
	 * 更新企业数据
	 * @param eb  更改后的数据
	 * @return true 更改成功 false 更改失败
	 */
	boolean updateEnterpriseInfo(Enterprise_Base eb);
	/**
	 * 企业信息更改的记录版本数据，在该表中新增加一行数据作为历史记录，只有在审核完成之后，将该数据进行更新到原先的记录之中
	 * @param eb
	 * @return  true  成功 false 失败
	 */
	boolean insertUpdateEnterpriseInfo(Enterprise_Base eb);
}
